"""
任务，broker，worker，都需要celery来管理，所以我们创建一个celery对象
"""

from celery import Celery
# celery也是需要用到django项目中的配置信息的
# import os
# os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mall.settings")

import os
if not os.getenv('DJANGO_SETTINGS_MODULE'):
    os.environ['DJANGO_SETTINGS_MODULE'] = 'mall.settings'

# 以上配置，加载到app的前面

# 1.创建cellery对象
app = Celery('celery_tasks')

# 2 设置broker
# config_from_object 设置配置文件的路径
app.config_from_object("celery_tasks.config")

# 3.celery可以自动检测路径
# 第一个参数
# 列表中的元素是任务包的路径
# 路径是从celery_tasks开始的
app.autodiscover_tasks(["celery_tasks.sms"])

# worker是通过指令来执行的
# celery -A celery实例对象的文件路径 worker -l info

# 这个指令需要在虚拟环境中执行
# celery -A celery_tasks worker _l info